//
// Created by langkechanxin on 2021/1/5.
//

#ifndef DATASTRUCTURE_LINK_H
#define DATASTRUCTURE_LINK_H
//声明节点结构
typedef struct Link {
    int elem;//存储整形元素
    struct Link *next;//指向直接后继元素的指针
} link;

// 初始化链表
link *initLink();

//p为原链表，elem表示新数据元素，add表示新元素要插入的位置
link *insertElem(link *p, int elem, int add);

//p为原链表，add为要删除元素的值
link *delElem(link *p, int add);

//p为原链表，elem表示被查找元素、
int selectElem(link *p, int elem);

//更新函数，其中，add 表示更改结点在链表中的位置，newElem 为新的数据域的值
link *amendElem(link * p,int add,int newElem);
// 输出链表
void display(link *p);
#endif //DATASTRUCTURE_LINK_H
